Tầm quan trọng Độ lớn khóa

Trong các thuật toán mật mã hóa, khóa được dùng điều khiển các quá trình mã hóa và giải mã. Phần lớn các thuật toán hiện đại dựa trên các thuật toán được công bố công khai, thậm chí là thực hiện bằng các phần mềm mã nguồn mở. Vì vậy, việc giữ bí mật khóa là yếu tố duy nhất đảm bảo an ninh cho hệ thống (với điều kiện là các thuật toán được thiết kế tốt). Quan điểm thiết kế này xuất phát từ các công trình nghiên cứu của Auguste Kerckhoffs (vào những năm 1880), Claude Shannon (vào những năm 1940); và được biết đến dưới tên gọi nguyên lý Kerckhoffs (hay Shannon's Maxim).

Vì thế, khóa phải đảm bảo đủ lớn để chống lại tấn công kiểu duyệt toàn bộ. Các công trình nghiên cứu của Claude Shannon đã chứng minh rằng: để đảm bảo an toàn tuyệt đối thì khóa phải có độ dài ít nhất bằng độ dài của văn bản được mật mã hóa. Khi ứng dụng vào thực tế của mật mã học hiện đại, rõ ràng việc quản lý khóa quá dài là rất khó khăn và hầu như không thể thực hiện được. Vì thế yêu cầu an toàn tuyệt đối với một hệ thống mật mã là không thực hiện được (ít nhất là với trình độ công nghệ hiện tại) và thay vào đó, người ta tập trung vào tính chất an toàn tính toán. Điều này có nghĩa để phá vỡ một hệ thống thì phải cần đến khối lượng tính toán vượt qua khả năng của bất kỳ kẻ tấn công nào.

Thông thường, độ dài khóa (tính bằng bít) là số lũy thừa của 2, có thể nhân thêm với một số nguyên lẻ.